Arquivo de inventário¶
Um arquivo de inventário é um arquivo que descreve os dispositivos aos quais o Ansible se conectará.
Hosts e grupos¶
No arquivo de inventário, os dispositivos podem ser especificados através dos endereços IP ou nomes. Os dispositivos podem ser especificados um de cada vez ou divididos em grupos.
Hosts file - arquivo inventário de exemplo, pode ser escrito em .INI, sem extensão ou em formato de YAML:
[ansible_core]
SW_CORE_1
SW_CORE_2
[ansible_access]
SW_ACCESS_1
SW_ACCESS_2
SW_ACCESS_3
SW_ACCESS_4
O nome indicado entre colchetes é o nome do grupo. Nesse caso, dois grupos de dispositivos são criados: ansible_core e ansible_access.
Nota
No arquivo hosts, o mesmo endereço IP ou nome (especificando o host) pode ser alocado em grupos diferentes.
Por padrão, o arquivo hosts é localizado em /etc/ansible/hosts.
Um grupo de grupos¶
O Ansible também permite combinar grupos de dispositivos em um grupo comum. Uma sintaxe especial é usada para isso:
[ansible_core]
SW_CORE_1
SW_CORE_2
[ansible_access]
SW_ACCESS_1
SW_ACCESS_2
SW_ACCESS_3
SW_ACCESS_4
[cisco_devices:children]
ansible_access
ansible_core
Arquivo Linux /etc/hosts¶
Esse é o arquivo hosts do linux, neste arquivo são armazenados dados dos hosts considerados locais. Ao preencher hostname e IP neste arquivo, meu host local irá conhecer esses hosts remotos como locais, segue exemplo deste arquivo:
127.0.0.1 localhost
127.0.1.1 thiago-ThinkPad
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
192.168.36.214 SW_CORE_1
192.168.36.215 SW_CORE_2
192.168.36.210 SW_ACCESS_1
192.168.36.211 SW_ACCESS_2
192.168.36.212 SW_ACCESS_3
192.168.36.213 SW_ACCESS_4
# LAB CAMPUS NETWORK
192.168.36.129 SW6_DISTR
192.168.36.130 SW5_DISTR
192.168.36.131 SW4_DISTR
192.168.36.132 SW3_DISTR
192.168.36.133 SW2_DISTR
192.168.36.134 SW1_DISTR